<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
    <button>抽奖</button>
    <script>
        // 1. 封装一个获取随机数rand函数
        function rnd(n, m) {
            return Math.floor(Math.random() * (m - n + 1) + n);
        }

        // console.log(rnd(1, 4));
        // 2. 获取按钮
        let btn = document.querySelector('button');
        // 3. 添加点击事件
        btn.onclick = function() {
                new Promise((res, rej) => {
                    // 我需要一个1-100的随机数 如果这个整数小于30 就认为中奖了
                    setTimeout(() => {
                        let num = rnd(1, 100);
                        if (num < 30) {
                            // 中奖了
                            res(num)
                        } else {
                            rej(num)
                        }
                    }, 1000);
                }).then(val => {
                    console.log("恭喜您。中了一辆玛莎拉蒂5元代金券号码为", val);
                }, rea => {
                    console.log("恭喜您。中了5元优惠券碎片，集齐20张可兑换", rea);
                })
            }
            // 4. 创建一个promise实例
            // 4.1 在执行器内设置1s单次定时器
            // 4.2 调用rand()
            // 4.3 判断中奖与否 - 概率30%
            // 4.3.1 中奖调用resolve
            // 4.3.2 未中奖调用reject
            // 5. 调用promise实例的then方法
            // 5.1 传入resolve/rejec函数
            // 5.2 执行打印结果
    </script>
</body>

</html>